Matlab |
您所在的位置:网站首页 › matlab画图 两条曲线 › Matlab |
说明:
在应用MATLAB对数据进行处理分析中,对数据进行可视化有利于分析过程以及找出结果,在处理一份数据的过程中,发现绘制两条数据曲线间的阴影会使得结论更加直观、清晰。主要使用到两个方法:1、patch绘图函数。2、数组逻辑处理。以此为记。 代码部分: % 使用patch对曲线中间进行颜色填充 %% 数据处理 %{ 要求对两条曲线相间部分进行上色。 使用数组逻辑处理生成由两条曲线坐标围成区域的坐标 %} clc; t = 0:0.1:2*pi; y1 = 5.*sinc(t); y2 = sinc(t); upLine = y1; downLine = y1; upLine(y1 < y2) = y2(y1 < y2); % 使用数组逻辑运算找出index(时间)下y1,y2较大的值 downLine(y1 > y2) = y2(y1 > y2);% 使用数组逻辑运算找出index(时间)下y1,y2较小的值 patchX = [t,fliplr(t)]; patchY = [upLine,fliplr(downLine)]; try close('patchF') catch fprintf('no such figure\n'); end % 绘图 figure('name','patchF') subplot(211) plot(t,y1) hold on plot(t,y2) grid minor subplot(212) plot(t,y1,'LineWidth',4,'LineStyle','-.') hold on plot(t,y2,'LineWidth',4,'LineStyle','-.') hold on patch(patchX,patchY,'green') grid minor 效果图:参考: [1] patch创建一个或多个填充多边形 https://ww2.mathworks.cn/help/matlab/ref/patch.html [2] 查找符合条件的数组元素 https://ww2.mathworks.cn/help/matlab/matlab_prog/find-array-elements-that-meet-a-condition.html [3] flipud将数组从上向下翻转 https://ww2.mathworks.cn/help/matlab/ref/flipud.html [4] fliplr将数组从左向右翻转https://ww2.mathworks.cn/help/matlab/ref/fliplr.html |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |